/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package framework.agendaFactory.lib;

import framework.agendaFactory.AgendaFactory;
import javax.swing.JTabbedPane;

/**
 *
 * @author Sergio Carlos Peres
 */
public abstract class InternalFrame extends javax.swing.JInternalFrame implements framework.groups.Groupable {
    public boolean controle;
    protected int codigo;
    protected javax.swing.JTabbedPane tabbedPane;
    protected framework.agendaFactory.lib.ToolBar toolBar;
    protected AgendaFactory factory;
    protected framework.groups.GroupStrategy strategy;
    
    public InternalFrame(String titulo) {
        super(titulo);
    }
    
    public InternalFrame(String titulo, framework.groups.GroupStrategy strategy) {
        super(titulo);
        this.strategy = strategy;
    }
    
    //<editor-fold defaultstate="collapsed" desc=" Metodos get ">
    public framework.agendaFactory.lib.ToolBar getToolBar() {
        return this.toolBar;
    }
    
    public JTabbedPane getTabbedPane() {
        return tabbedPane;
    }
    
    public AgendaFactory getFactory() {
        return factory;
    }
    public framework.groups.GroupStrategy getStrategy(){
        return strategy;
    }
    //</editor-fold>
    
    //<editor-fold defaultstate="collapsed" desc=" Metodos set ">
    public void setToolBar(ToolBar toolBar) {
        this.toolBar = toolBar;
    }
    
    public void setTabbedPane(JTabbedPane tabbedPane) {
        this.tabbedPane = tabbedPane;
    }
    
    public void setFactory(AgendaFactory factory) {
        this.factory = factory;
    }
    
    public void setStrategy(framework.groups.GroupStrategy strategy) {
        this.strategy = strategy;
    }
    //</editor-fold>
    
    
    public abstract void preencherTabela(String sql);
    public abstract void preencherComboBox(String sql);
    public abstract void ativarCamposAdicionar(boolean b);
    public abstract void limparAdicionar();
    public abstract Object getTelaAdd();
    public abstract void setTelaAdd(Object o);
    public abstract javax.swing.JTable getTabela();
}
